#include <Stdio.h>
#include <stdlib.h>
#include <time.h>
#include <string.h>
typedef int ElemType;
typedef struct
{
    ElemType *elem;
    int Lenth;
}SSTable;
void InitSStable(SSTable &ST,int len)
{
    ST.Lenth=len;
    ST.elem=(ElemType*) malloc(sizeof(ElemType)*ST.Lenth);
    int i=0;
    srand(time(NULL));
    for(i;i<ST.Lenth;i++)
    {
        ST.elem[i]=rand()%100;
    }
}
void print_sst(SSTable ST)
{
    int i=0;
    while(i<ST.Lenth-1)
    {
        printf("%3d",ST.elem[i]);
        i++;
    }
}
void swap(int &a,int &b)
{
    int tmp;
    tmp=a;
    a=b;
    b=tmp;
}
void Popsort(ElemType *A,int len)
{
    int i,j;
    bool flag;
    for(i=0;i<len-1 ;i++)
    {
        flag=false;
        for(j=len-1;j>0;j--)
        {
            if (A[j-1]>A[j])
            {
                swap(A[j-1],A[j]);
                flag= true;
            }
        }
        if (false==flag)
        {
            return;
        }
    }
}
int main()
{
    SSTable ST;
    InitSStable(ST,10);
    print_sst(ST);
    printf("\n");
    Popsort(ST.elem,10);
    print_sst(ST);
    return 0;
}